1. Technical Field
The present invention relates to wireless communication systems and, more specifically, to wireless communication baseband controllers for systems utilizing master to multi-slave communications.
2. Related Art
The BLUETOOTH wireless technology allows users to make effortless, wireless and instant connections between various communication devices such as notebook computers, desktop computers and mobile phones. Because BLUETOOTH systems use radio frequency transmissions to transfer both voice and data, the transmissions occur in real-time. The BLUETOOTH specification provides for a sophisticated transmission mode that ensures protection from interference and provides security of the communication signals.
According to most designs that implement the BLUETOOTH specifications, the BLUETOOTH radio is being built into a small microchip and is designed to operate in frequency bands that are globally available. This ensures communication compatibility on a worldwide basis. Additionally, the BLUETOOTH specification defines two power levels. A first power level covers the shorter, personal area within a room and a second power level is designed for covering a medium range. For example, the second power level might be used to cover communications from one end of a building, such as a house, to the other. Software controls and identity coding are built into each microchip to ensure that only those units preset by the owners can communicate with each other.
More specifically, the BLUETOOTH wireless technology supports point-to-point and point-to-multipoint connections. Under the BLUETOOTH specifications, one master can communicate with up to seven slave devices. At any one instant, a BLUETOOTH master can communicate or transmit over three channels to the slaves under current specifications and designs. Additionally, one group of BLUETOOTH devices, namely a master and a plurality of slaves, may also communicate with another group to create communication networks of continually configurable and flexible configurations. The topology is best described as a flexible and extendible micronetwork.
The BLUETOOTH specification is made to facilitate compatibility among systems made by different vendors and sold and utilized throughout the world. At the same time, the BLUETOOTH protocols and specifications are open to enable the use of proprietary processes underneath the defined communication protocols. The BLUETOOTH protocol stack can be divided into four layers, notwithstanding that it allows for proprietary implementation, according to the purposes and aspects of the protocol. For example, the core BLUETOOTH protocol defines the protocols for baseband operation, as well as the link manager protocol (LMP), logical link and control adaptation protocol (L2CAP), and service discovery protocol (SDP).
The second protocol layer is the cable replacement protocol that includes the serial cable emulation protocol (RSCOMM). The third protocol layer is the telephony control protocols that include the telephony control specification (TCS binary) and the AT commands. Finally, the fourth protocol layer includes the adopted protocols, such as point-to-point protocol (PPP), transport control protocol/user datagram protocol (TCP/UDP), object exchange protocol (OEP), wireless application protocol (WAP), WAP application environment (WAE) and others. In addition to the above mentioned protocol layers, the BLUETOOTH specification also defines a host controller interface (HCI). HCI provides a command interface to the baseband controller, link manager, as well as access to hardware status and control registers.
The BLUETOOTH core protocols include BLUETOOTH-specific protocols that have been developed for BLUETOOTH systems. For example, the RFCOMM and TCS binary protocol have also been developed for Bluetooth but they are based on the ETSI TS 07.10 and the ITU-T recommendations Q.931 standards, respectively. Most BLUETOOTH devices require the BLUETOOTH core protocols, in addition to the BLUETOOTH radio, while the remaining protocols are only implemented when necessary.
The cable replacement layer, the telephone control layer and the adopted protocol layer form application-oriented protocols that enable applications to run on top of or over the BLUETOOTH core protocols. Because the BLUETOOTH specification is open, these additional protocols may be accommodated in an inoperable fashion that is not necessarily required.
The baseband and link control layers facilitate the physical operation of the BLUETOOTH transceiver and, more specifically, the physical RF link between BLUETOOTH units forming a network. As the BLUETOOTH standards provide for frequency-hopping in a spread spectrum environment in which packets are transmitted in continuously changing defined time slots on defined frequencies, the baseband and link control layer utilizes inquiry and paging procedures to synchronize the transmission of communication signals at the specified frequency and clock cycles between the various BLUETOOTH devices.
The BLUETOOTH core protocols further provide two different types of physical links with corresponding baseband packets. A synchronous connection-oriented (SCO) and an asynchronous connectionless (ACL) physical link may be implemented in a multiplexed manner on the same RF link. ACL packets are used for data only while the SCO packets may contain audio, as well as a combination of audio and data. All audio and data packets can be provided with different levels of error correction and may also be encrypted if required. Special data types, including those for link management and control messages, are transmitted on a special specified channel.
The BLUETOOTH protocols are intended for rapidly developing applications using BLUETOOTH technology. These applications include an ultimate headset, three-in-one phone, local network access, file transfer and Internet bridge. Because of the different types of applications that are envisioned for BLUETOOTH systems, several aspects of the communication protocols are very important. One requirement for a BLUETOOTH device is to be able to communicate and transfer its signals in a real-time basis. Another requirement that is extremely important for a BLUETOOTH system is that it be able to transmit and receive and interpret transmissions at exact moments in time. In the context of a BLUETOOTH network that includes one master and seven slaves, the synchronization and timing requirements for the communications can be significant for any one device. Current micro-sequencers and controllers, for example, do not have the capability to communicate with up to seven slaves on a real-time basis because it is impossible for any one micro-controller to satisfy the real-time BLUETOOTH requirements. For example, the internal data pipelines and supporting hardware to facilitate such communications do not readily support this requirement that is found in the BLUETOOTH specification. Stated differently, the data pipeline designs of masters and micro-controllers cannot readily process all of the data for seven slaves on a real-time basis.
As mentioned above, a give master is physically limited to a number of simultaneous transmission events due to its design. In a master to multi-slave network environment, this limitation can result in conflicts (collisions) between synchronized and non-synchronized events. A synchronized transmissions event is a scheduled transmission that should be made to avoid a degradation of a reconstructed signal quality at the received end. A non-synchronized transmission event is the transmission of data or other signals that are not time sensitive and will degrade based upon when transmitted.
If a non-synchronized transmission event that spans multiple defined transmission periods is initiated, therefore, and if a synchronized event is to occur during the transmission of the multiple period length non-synchronized transmission event, a “collision” could occur. A collision is a term reflecting a situation in which there are not enough resources to satisfy all pending transmissions of synchronized events. Accordingly, a need exists for a method and apparatus for scheduling synchronized events so that non-synchronized events may be initiated without causing a potential collision.